package com.dcyao.musicserve.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dcyao.musicserve.common.R;
import com.dcyao.musicserve.domain.StaffList;
import com.dcyao.musicserve.domain.dto.StaffListDTO;

import java.util.List;

/**
* @author admin
* @description 针对表【staff_list(乐谱分类表)】的数据库操作Service
*/
public interface StaffListService extends IService<StaffList> {
    /**
     * 分页查找乐谱集信息
     * @param pageNum
     * @param pageSize
     * @param style
     * @return
     */
    R findPage(Integer pageNum, Integer pageSize, String style);

    /**
     * 新增
     * @param staffList
     * @return
     */
    R addStaffList(StaffList staffList);

    /**
     * 编辑
     * @param staffListDTO
     * @return
     */
    R updateStaffList(StaffListDTO staffListDTO);

    /**
     * 删除
     * @param id
     * @return
     */
    R deleteStaffList(Integer id);

    /**
     * 批量删除
     * @param ids
     * @return
     */
    R deleteBathIds(List<Integer> ids);

    /**
     * 查询乐谱集总数
     * @return
     */
    int staffListCount();

    /**
     * 查询所有乐谱集
     * @return
     */
    R allStaffList();

    /**
     *根据乐谱集名模糊查询
     * @return
     */
    R likeStaffListName(String name);

    /**
     *根据风格查询对应的乐谱集（乐谱集有数据）
     * @return
     */
    R StaffListStyle(String style);

    /**
     *根据风格查询对应的乐谱集
     * @return
     */
    R StaffListStyleAll(String style);


    /**
     *根据风格统计乐谱集里面的乐谱
     * @return
     */
    R  StyleStaff();

    /**
     *查询所以的风格
     * @return
     */
    R StaffStyle();


}
